package uk.ac.open.kmi.dyniqx.storages;

import java.util.ArrayList;
import java.util.Hashtable;
import java.util.TreeSet;

import org.directwebremoting.WebContext;

import uk.ac.open.kmi.dyniqx.wrappers.QueryWrapper;

public interface Storage {

	public static final int READ_ACTION = 1;
	public static final int WRITE_ACTION = 2;
	public static final int CLEAR_ACTION = 3;
	public static final int FETCH_ACTION = 4;
	
	public void setInstanceName(String instanceName);
	public String getInstanceName();
	public ArrayList<QueryWrapper> getQueryWrapper();
	public void setQueryWrapper(ArrayList<QueryWrapper> queryWrapper);
	public Hashtable<String, TreeSet<String>> getInsertedIDs();
	public void setInsertedIDs(Hashtable<String, TreeSet<String>> insertedIDs);
	public Object performIOAction(int currentAction, Object dataPool);
	public void updateGrid();
	public WebContext getWctx();
	public void setWctx(WebContext wctx);
}
